home *** CD-ROM | disk | FTP | other *** search
/ Aminet 4 / Aminet 4 - November 1994.iso / aminet / comm / term / term41source.lha / Extras / Source / term-Source.lha / termARexxData.c < prev    next >
Encoding:
C/C++ Source or Header  |  1994-08-14  |  33.0 KB  |  767 lines

  1. /*
  2. **    termARexxData.c
  3. **
  4. **    Declarations for ARexx interface data
  5. **
  6. **    Copyright © 1990-1994 by Olaf `Olsen' Barthel
  7. **        All Rights Reserved
  8. */
  9.  
  10. #include "termARexxGlobal.h"
  11. #include "termARexxAttributes.h"
  12.  
  13. STATIC STRPTR DestructiveBSMappings[] =
  14. {
  15.     "OFF",
  16.     "OVERSTRIKE",
  17.     "SHIFT",
  18.     NULL
  19. };
  20.  
  21. STATIC STRPTR ParityMappings[] =
  22. {
  23.     "NONE",
  24.     "EVEN",
  25.     "ODD",
  26.     "MARK",
  27.     "SPACE",
  28.     NULL
  29. };
  30.  
  31. STATIC STRPTR HandshakingMappings[] =
  32. {
  33.     "NONE",
  34.     "RTSCTS",
  35.     "RTSCTSDSR",
  36.     NULL
  37. };
  38.  
  39. STATIC STRPTR DuplexMappings[] =
  40. {
  41.     "FULL",
  42.     "HALF",
  43.     NULL
  44. };
  45.  
  46. STATIC STRPTR ColourMappings[] =
  47. {
  48.     "FOUR",
  49.     "EIGHT",
  50.     "SIXTEEN",
  51.     "TWO",
  52.     NULL
  53. };
  54.  
  55. STATIC STRPTR StatusMappings[] =
  56. {
  57.     "DISABLED",
  58.     "STANDARD",
  59.     "COMPRESSED",
  60.     NULL
  61. };
  62.  
  63. STATIC STRPTR BellMappings[] =
  64. {
  65.     "NONE",
  66.     "VISIBLE",
  67.     "AUDIBLE",
  68.     "BOTH",
  69.     "SYSTEM",
  70.     NULL
  71. };
  72.  
  73. STATIC STRPTR AlertMappings[] =
  74. {
  75.     "NONE",
  76.     "BELL",
  77.     "SCREEN",
  78.     "BOTH",
  79.     NULL
  80. };
  81.  
  82. STATIC STRPTR EmulationMappings[] =
  83. {
  84.     "INTERNAL",
  85.     "ATOMIC",
  86.     "TTY",
  87.     "EXTERNAL",
  88.     "HEX",
  89.     NULL
  90. };
  91.  
  92. STATIC STRPTR FontMappings[] =
  93. {
  94.     "STANDARD",
  95.     "IBM",
  96.     "IBMRAW",
  97.     NULL
  98. };
  99.  
  100. STATIC STRPTR EOL_Mappings[] =
  101. {
  102.     "IGNORE",
  103.     "CR,"
  104.     "LF",
  105.     "CRLF",
  106.     "LFCR",
  107.     NULL
  108. };
  109.  
  110. STATIC STRPTR IdentifyMappings[] =
  111. {
  112.     "IGNORE",
  113.     "FILETYPE",
  114.     "SOURCE",
  115.     NULL
  116. };
  117.  
  118. STATIC STRPTR ApplicationMappings[] =
  119. {
  120.     "STANDARD",
  121.     "APPLICATION",
  122.     NULL
  123. };
  124.  
  125. STATIC STRPTR FontScaleMappings[] =
  126. {
  127.     "NORMAL",
  128.     "HALF",
  129.     NULL
  130. };
  131.  
  132. STATIC STRPTR ScrollMappings[] =
  133. {
  134.     "JUMP",
  135.     "SMOOTH",
  136.     NULL
  137. };
  138.  
  139. STATIC STRPTR SexMappings[] =
  140. {
  141.     "MALE",
  142.     "FEMALE",
  143.     NULL
  144. };
  145.  
  146. STATIC STRPTR OnlineMappings[] =
  147. {
  148.     "TIME",
  149.     "COST",
  150.     "BOTH",
  151.     NULL
  152. };
  153.  
  154. STATIC STRPTR AutoDateMappings[] =
  155. {
  156.     "NAME",
  157.     "INCLUDE",
  158.     NULL
  159. };
  160.  
  161. STATIC STRPTR PacingMappings[] =
  162. {
  163.     "DIRECT",
  164.     "ECHO",
  165.     "ANYECHO",
  166.     "PROMPT",
  167.     "DELAY",
  168.     "KEYBOARD",
  169.     NULL
  170. };
  171.  
  172. STATIC STRPTR OpenBufferMappings[] =
  173. {
  174.     "TOP",
  175.     "END",
  176.     NULL
  177. };
  178.  
  179. STATIC STRPTR BufferPositionMappings[] =
  180. {
  181.     "LEFT",
  182.     "MID",
  183.     "RIGHT",
  184.     NULL
  185. };
  186.  
  187. struct AttributeEntry __far AttributeTable[] =
  188. {
  189.     0,    "TERM",                INFO_STEM,    TRUE,    NULL,            ATTR_APPLICATION,
  190.  
  191.     1,     "VERSION",            INFO_TEXT,    TRUE,    NULL,            ATTR_APPLICATION_VERSION,
  192.     1,     "SCREEN",            INFO_TEXT,    TRUE,    NULL,            ATTR_APPLICATION_SCREEN,
  193.  
  194.     1,     "SESSION",            INFO_STEM,    TRUE,    NULL,            ATTR_APPLICATION_SESSION,
  195.     2,      "ONLINE",            INFO_BOOLEAN,    TRUE,    NULL,            ATTR_APPLICATION_SESSION_ONLINE,
  196.     2,      "SESSIONSTART",        INFO_TEXT,    TRUE,    NULL,            ATTR_APPLICATION_SESSION_SESSIONSTART,
  197.     2,      "BYTESSENT",            INFO_NUMERIC,    TRUE,    NULL,            ATTR_APPLICATION_SESSION_BYTESSENT,
  198.     2,      "BYTESRECEIVED",        INFO_NUMERIC,    TRUE,    NULL,            ATTR_APPLICATION_SESSION_BYTESRECEIVED,
  199.     2,      "CONNECTMESSAGE",        INFO_TEXT,    TRUE,    NULL,            ATTR_APPLICATION_SESSION_CONNECTMESSAGE,
  200.     2,      "BBSNAME",            INFO_TEXT,    TRUE,    NULL,            ATTR_APPLICATION_SESSION_BBSNAME,
  201.     2,      "BBSNUMBER",            INFO_TEXT,    TRUE,    NULL,            ATTR_APPLICATION_SESSION_BBSNUMBER,
  202.     2,      "BBSCOMMENT",            INFO_TEXT,    TRUE,    NULL,            ATTR_APPLICATION_SESSION_BBSCOMMENT,
  203.     2,      "USERNAME",            INFO_TEXT,    TRUE,    NULL,            ATTR_APPLICATION_SESSION_USERNAME,
  204.     2,      "ONLINEMINUTES",        INFO_NUMERIC,    TRUE,    NULL,            ATTR_APPLICATION_SESSION_ONLINEMINUTES,
  205.     2,      "ONLINECOST",            INFO_NUMERIC,    TRUE,    NULL,            ATTR_APPLICATION_SESSION_ONLINECOST,
  206.  
  207.     1,     "AREXX",            INFO_TEXT,    TRUE,    NULL,            ATTR_APPLICATION_AREXX,
  208.     1,     "LASTERROR",            INFO_NUMERIC,    TRUE,    NULL,            ATTR_APPLICATION_LASTERROR,
  209.  
  210.     1,     "TERMINAL",            INFO_STEM,    TRUE,    NULL,            ATTR_APPLICATION_TERMINAL,
  211.     2,      "ROWS",            INFO_NUMERIC,    TRUE,    NULL,            ATTR_APPLICATION_TERMINAL_ROWS,
  212.     2,      "COLUMNS",            INFO_NUMERIC,    TRUE,    NULL,            ATTR_APPLICATION_TERMINAL_COLUMNS,
  213.  
  214.     1,     "BUFFER",            INFO_STEM,    TRUE,    NULL,            ATTR_APPLICATION_BUFFER,
  215.     2,      "SIZE",            INFO_NUMERIC,    TRUE,    NULL,            ATTR_APPLICATION_BUFFER_SIZE,
  216.  
  217.     0,    "SERIALPREFS",            INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_SERIAL,
  218.     1,     "BAUDRATE",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_SERIAL_BAUDRATE,
  219.     1,     "BREAKLENGTH",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_SERIAL_BREAKLENGTH,
  220.     1,     "BUFFERSIZE",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_SERIAL_BUFFERSIZE,
  221.     1,     "DEVICENAME",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_SERIAL_DEVICENAME,
  222.     1,     "UNIT",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_SERIAL_UNIT,
  223.     1,     "BITSPERCHAR",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_SERIAL_BITSPERCHAR,
  224.     1,     "PARITYMODE",            INFO_MAPPED,    FALSE,    ParityMappings,        ATTR_PREFS_SERIAL_PARITYMODE,
  225.     1,     "STOPBITS",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_SERIAL_STOPBITS,
  226.     1,     "HANDSHAKINGMODE",        INFO_MAPPED,    FALSE,    HandshakingMappings,    ATTR_PREFS_SERIAL_HANDSHAKINGMODE,
  227.     1,     "DUPLEXMODE",            INFO_MAPPED,    FALSE,    DuplexMappings,        ATTR_PREFS_SERIAL_DUPLEXMODE,
  228.     1,     "XONXOFF",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_SERIAL_XONXOFF,
  229.     1,     "HIGHSPEED",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_SERIAL_HIGHSPEED,
  230.     1,     "SHARED",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_SERIAL_SHARED,
  231.     1,     "STRIPBIT8",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_SERIAL_STRIPBIT8,
  232.     1,     "CARRIERCHECK",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_SERIAL_CARRIERCHECK,
  233.     1,     "PASSXONXOFFTHROUGH",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_SERIAL_PASSXONXOFFTHROUGH,
  234.     1,     "QUANTUM",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_SERIAL_QUANTUM,
  235.     1,     "USEOWNDEVUNIT",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_SERIAL_USE_OWNDEVUNIT,
  236.  
  237.     0,    "MODEMPREFS",            INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_MODEM,
  238.     1,     "MODEMINITTEXT",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_MODEM_MODEMINITTEXT,
  239.     1,     "MODEMEXITTEXT",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_MODEM_MODEMEXITTEXT,
  240.     1,     "MODEMHANGUPTEXT",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_MODEM_MODEMHANGUPTEXT,
  241.     1,     "DIALPREFIXTEXT",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_MODEM_DIALPREFIXTEXT,
  242.     1,     "DIALSUFFIXTEXT",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_MODEM_DIALSUFFIXTEXT,
  243.     1,     "NOCARRIERTEXT",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_MODEM_NOCARRIERTEXT,
  244.     1,     "NODIALTONETEXT",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_MODEM_NODIALTONETEXT,
  245.     1,     "CONNECTTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_MODEM_CONNECTTEXT,
  246.     1,     "VOICETEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_MODEM_VOICETEXT,
  247.     1,     "RINGTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_MODEM_RINGTEXT,
  248.     1,     "BUSYTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_MODEM_BUSYTEXT,
  249.     1,     "OKTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_MODEM_OKTEXT,
  250.     1,     "ERRORTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_MODEM_ERRORTEXT,
  251.     1,     "REDIALDELAY",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_MODEM_REDIALDELAY,
  252.     1,     "DIALRETRIES",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_MODEM_DIALRETRIES,
  253.     1,     "DIALTIMEOUT",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_MODEM_DIALTIMEOUT,
  254.     1,     "CONNECTAUTOBAUD",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_MODEM_CONNECTAUTOBAUD,
  255.     1,     "HANGUPDROPSDTR",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_MODEM_HANGUPDROPSDTR,
  256.     1,     "REDIALAFTERHANGUP",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_MODEM_REDIALAFTERHANGUP,
  257.     1,     "NOCARRIERISBUSY",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_MODEM_NOCARRIERISBUSY,
  258.     1,     "CONNECTLIMIT",        INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_MODEM_CONNECTLIMIT,
  259.     1,     "CONNECTLIMITMACRO",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_MODEM_CONNECTLIMITMACRO,
  260.     1,     "TIMETOCONNECT",        INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_MODEM_TIME_TO_CONNECT,
  261.  
  262.     0,    "COMMANDPREFS",            INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_COMMANDS,
  263.     1,     "STARTUPMACROTEXT",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_COMMANDS_STARTUPMACROTEXT,
  264.     1,     "LOGINMACROTEXT",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_COMMANDS_LOGINMACROTEXT,
  265.     1,     "LOGOFFMACROTEXT",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_COMMANDS_LOGOFFMACROTEXT,
  266.     1,     "UPLOADMACROTEXT",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_COMMANDS_UPLOADMACROTEXT,
  267.     1,     "DOWNLOADMACROTEXT",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_COMMANDS_DOWNLOADMACROTEXT,
  268.  
  269.     0,    "SCREENPREFS",            INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_SCREEN,
  270.     1,     "COLOURMODE",            INFO_MAPPED,    FALSE,    ColourMappings,        ATTR_PREFS_SCREEN_COLOURMODE,
  271.     1,     "FONTNAME",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_SCREEN_FONTNAME,
  272.     1,     "FONTSIZE",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_SCREEN_FONTSIZE,
  273.     1,     "MAKESCREENPUBLIC",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_SCREEN_MAKESCREENPUBLIC,
  274.     1,     "SHANGHAIWINDOWS",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_SCREEN_SHANGHAIWINDOWS,
  275.     1,     "BLINKING",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_SCREEN_BLINKING,
  276.     1,     "FASTERLAYOUT",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_SCREEN_FASTERLAYOUT,
  277.     1,     "TITLEBAR",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_SCREEN_TITLEBAR,
  278.     1,     "STATUSLINEMODE",        INFO_MAPPED,    FALSE,    StatusMappings,        ATTR_PREFS_SCREEN_STATUSLINEMODE,
  279.     1,     "USEPUBSCREEN",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_SCREEN_USEWORKBENCH,
  280.     1,     "PUBSCREENNAME",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_SCREEN_PUBSCREENNAME,
  281.     1,     "ONLINEDISPLAY",        INFO_MAPPED,    FALSE,    OnlineMappings,        ATTR_PREFS_SCREEN_ONLINEDISPLAY,
  282.     1,     "USEPENS",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_SCREEN_USEPENS,
  283.     1,     "WINDOWBORDER",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_SCREEN_WINDOW_BORDER,
  284.     1,     "SPLITSTATUS",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_SCREEN_SPLIT_STATUS,
  285.  
  286.     0,    "TERMINALPREFS",        INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_TERMINAL,
  287.     1,     "BELLMODE",            INFO_MAPPED,    FALSE,    BellMappings,        ATTR_PREFS_TERMINAL_BELLMODE,
  288.     1,     "ALERTMODE",            INFO_MAPPED,    FALSE,    AlertMappings,        ATTR_PREFS_TERMINAL_ALERTMODE,
  289.     1,     "EMULATIONMODE",        INFO_MAPPED,    FALSE,    EmulationMappings,    ATTR_PREFS_TERMINAL_EMULATIONMODE,
  290.     1,     "FONTMODE",            INFO_MAPPED,    FALSE,    FontMappings,        ATTR_PREFS_TERMINAL_FONTMODE,
  291.     1,     "SENDCRMODE",            INFO_MAPPED,    FALSE,    EOL_Mappings,        ATTR_PREFS_TERMINAL_SENDCRMODE,
  292.     1,     "SENDLFMODE",            INFO_MAPPED,    FALSE,    EOL_Mappings,        ATTR_PREFS_TERMINAL_SENDLFMODE,
  293.     1,     "RECEIVECRMODE",        INFO_MAPPED,    FALSE,    EOL_Mappings,        ATTR_PREFS_TERMINAL_RECEIVECRMODE,
  294.     1,     "RECEIVELFMODE",        INFO_MAPPED,    FALSE,    EOL_Mappings,        ATTR_PREFS_TERMINAL_RECEIVELFMODE,
  295.     1,     "NUMCOLUMNS",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_TERMINAL_NUMCOLUMNS,
  296.     1,     "NUMLINES",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_TERMINAL_NUMLINES,
  297.     1,     "KEYMAPNAME",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_TERMINAL_KEYMAPNAME,
  298.     1,     "EMULATIONNAME",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_TERMINAL_EMULATIONNAME,
  299.     1,     "FONTNAME",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_TERMINAL_FONTNAME,
  300.     1,     "FONTSIZE",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_TERMINAL_FONTSIZE,
  301.     1,     "USETERMINALPROCESS",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_TERMINAL_USETERMINALPROCESS,
  302.  
  303.     0,    "PATHPREFS",            INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_PATHS,
  304.     1,     "ASCIIUPLOADPATH",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_PATHS_ASCIIUPLOADPATH,
  305.     1,     "ASCIIDOWNLOADPATH",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_PATHS_ASCIIDOWNLOADPATH,
  306.     1,     "TEXTUPLOADPATH",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_PATHS_TEXTUPLOADPATH,
  307.     1,     "TEXTDOWNLOADPATH",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_PATHS_TEXTDOWNLOADPATH,
  308.     1,     "BINARYUPLOADPATH",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_PATHS_BINARYUPLOADPATH,
  309.     1,     "BINARYDOWNLOADPATH",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_PATHS_BINARYDOWNLOADPATH,
  310.     1,     "CONFIGPATH",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_PATHS_CONFIGPATH,
  311.     1,     "EDITORNAME",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_PATHS_EDITORNAME,
  312.     1,     "HELPFILENAME",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_PATHS_HELPFILENAME,
  313.  
  314.     0,    "MISCPREFS",            INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_MISC,
  315.     1,     "PRIORITY",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_MISC_PRIORITY,
  316.     1,     "BACKUPCONFIG",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_MISC_BACKUPCONFIG,
  317.     1,     "OPENFASTMACROPANEL",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_MISC_OPENFASTMACROPANEL,
  318.     1,     "RELEASEDEVICE",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_MISC_RELEASEDEVICE,
  319.     1,     "OVERRIDEPATH",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_MISC_OVERRIDEPATH,
  320.     1,     "AUTOUPLOAD",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_MISC_AUTOUPLOAD,
  321.     1,     "SETARCHIVEDBIT",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_MISC_SETARCHIVEDBIT,
  322.     1,     "COMMENTMODE",            INFO_MAPPED,    FALSE,    IdentifyMappings,    ATTR_PREFS_MISC_COMMENTMODE,
  323.     1,     "TRANSFERICONS",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_MISC_TRANSFERICONS,
  324.     1,     "CREATEICONS",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_MISC_CREATEICONS,
  325.     1,     "SIMPLEIO",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_MISC_SIMPLEIO,
  326.     1,     "HIDEUPLOADICON",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_MISC_HIDE_UPLOAD_ICON,
  327.     1,     "TRANSFERPERFMETER",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_MISC_TRANSFER_PERFMETER,
  328.     1,     "IOBUFFERSIZE",        INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_MISC_IOBUFFERSIZE,
  329.  
  330.     0,    "CLIPBOARDPREFS",        INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_CLIPBOARD,
  331.     1,     "UNIT",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_CLIPBOARD_UNIT,
  332.     1,     "LINEDELAY",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_CLIPBOARD_LINEDELAY,
  333.     1,     "CHARDELAY",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_CLIPBOARD_CHARDELAY,
  334.     1,     "INSERTPREFIXTEXT",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CLIPBOARD_INSERTPREFIXTEXT,
  335.     1,     "INSERTSUFFIXTEXT",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CLIPBOARD_INSERTSUFFIXTEXT,
  336.     1,     "LINEPROMPTTEXT",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CLIPBOARD_LINEPROMPT,
  337.     1,     "TEXTPACING",            INFO_MAPPED,    FALSE,    PacingMappings,        ATTR_PREFS_CLIPBOARD_TEXTPACING,
  338.     1,     "SENDTIMEOUT",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_CLIPBOARD_SENDTIMEOUT,
  339.  
  340.     0,    "CAPTUREPREFS",            INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_CAPTURE,
  341.     1,     "LOGACTIONS",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_CAPTURE_LOGACTIONS,
  342.     1,     "LOGCALLS",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_CAPTURE_LOGCALLS,
  343.     1,     "LOGFILENAME",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CAPTURE_LOGFILENAME,
  344.     1,     "MAXBUFFERSIZE",        INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_CAPTURE_MAXBUFFERSIZE,
  345.     1,     "BUFFER",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_CAPTURE_BUFFER,
  346.     1,     "CONNECTAUTOCAPTURE",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_CAPTURE_CONNECTAUTOCAPTURE,
  347.     1,     "AUTOCAPTUREDATE",        INFO_MAPPED,    FALSE,    AutoDateMappings,    ATTR_PREFS_CAPTURE_AUTOCAPTUREDATE,
  348.     1,     "CAPTUREFILTER",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_CAPTURE_CAPTUREFILTER,
  349.     1,     "CAPTUREPATH",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CAPTURE_CAPTUREPATH,
  350.     1,     "CALLLOGFILENAME",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CAPTURE_CALLLOGFILENAME,
  351.     1,     "BUFFERSAVEPATH",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CAPTURE_BUFFERSAVEPATH,
  352.     1,     "OPENBUFFERWINDOW",        INFO_MAPPED,    FALSE,    OpenBufferMappings,    ATTR_PREFS_CAPTURE_OPENBUFFERWINDOW,
  353.     1,     "OPENBUFFERSCREEN",        INFO_MAPPED,    FALSE,    OpenBufferMappings,    ATTR_PREFS_CAPTURE_OPENBUFFERSCREEN,
  354.     1,     "BUFFERSCREENPOSITION",    INFO_MAPPED,    FALSE,    BufferPositionMappings,    ATTR_PREFS_CAPTURE_BUFFERSCREENPOSITION,
  355.     1,     "BUFFERWIDTH",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_CAPTURE_BUFFERWIDTH,
  356.     1,     "REMEMBERBUFFERWINDOW",    INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_CAPTURE_REMEMBER_BUFFERWINDOW,
  357.     1,     "REMEMBERBUFFERSCREEN",    INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_CAPTURE_REMEMBER_BUFFERSCREEN,
  358.     1,     "SEARCHHISTORY",        INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_CAPTURE_SEARCH_HISTORY,
  359.  
  360.     0,    "FILEPREFS",            INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_FILE,
  361.     1,     "TRANSFERPROTOCOLNAME",    INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_FILE_TRANSFERPROTOCOLNAME,
  362.     1,     "TRANSLATIONFILENAME",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_FILE_TRANSLATIONFILENAME,
  363.     1,     "MACROFILENAME",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_FILE_MACROFILENAME,
  364.     1,     "CURSORFILENAME",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_FILE_CURSORFILENAME,
  365.     1,     "FASTMACROFILENAME",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_FILE_FASTMACROFILENAME,
  366.  
  367.     0,    "EMULATIONPREFS",        INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_EMULATION,
  368.     1,     "CURSORMODE",            INFO_MAPPED,    FALSE,    ApplicationMappings,    ATTR_PREFS_EMULATION_CURSORMODE,
  369.     1,     "NUMERICMODE",            INFO_MAPPED,    FALSE,    ApplicationMappings,    ATTR_PREFS_EMULATION_NUMERICMODE,
  370.     1,     "CURSORWRAP",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_EMULATION_CURSORWRAP,
  371.     1,     "LINEWRAP",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_EMULATION_LINEWRAP,
  372.     1,     "INSERTMODE",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_EMULATION_INSERTMODE,
  373.     1,     "NEWLINEMODE",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_EMULATION_NEWLINEMODE,
  374.     1,     "FONTSCALEMODE",        INFO_MAPPED,    FALSE,    FontScaleMappings,    ATTR_PREFS_EMULATION_FONTSCALEMODE,
  375.     1,     "SCROLLMODE",            INFO_MAPPED,    FALSE,    ScrollMappings,        ATTR_PREFS_EMULATION_SCROLLMODE,
  376.     1,     "DESTRUCTIVEBACKSPACE",    INFO_MAPPED,    FALSE,    DestructiveBSMappings,    ATTR_PREFS_EMULATION_DESTRUCTIVEBACKSPACE,
  377.     1,     "SWAPBSDELETE",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_EMULATION_SWAPBSDELETE,
  378.     1,     "PRINTERENABLED",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_EMULATION_PRINTERENABLED,
  379.     1,     "ANSWERBACKTEXT",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_EMULATION_ANSWERBACKTEXT,
  380.     1,     "CLSRESETSCURSOR",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_EMULATION_CLS_RESETS_CURSOR,
  381.     1,     "CURSORLOCKED",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_EMULATION_CURSORLOCKED,
  382.     1,     "FONTLOCKED",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_EMULATION_FONTLOCKED,
  383.     1,     "NUMPADLOCKED",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_EMULATION_NUMPADLOCKED,
  384.     1,     "MAXPRESCROLL",        INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_EMULATION_MAXSCROLL,
  385.     1,     "MAXJUMP",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_EMULATION_MAXJUMP,
  386.  
  387.     0,    "TRANSFERPREFS",        INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_TRANSFER,
  388.     1,     "DEFAULTLIBRARY",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_TRANSFER_DEFAULT_LIBRARY,
  389.     1,     "ASCIIUPLOADLIBRARY",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_TRANSFER_ASCII_UPLOAD_LIBRARY,
  390.     1,     "INTERNALASCIIUPLOAD",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_TRANSFER_INTERNAL_ASCII_UPLOAD,
  391.     1,     "ASCIIDOWNLOADLIBRARY",    INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_TRANSFER_ASCII_DOWNLOAD_LIBRARY,
  392.     1,     "INTERNALASCIIDOWNLOAD",    INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_TRANSFER_INTERNAL_ASCII_DOWNLOAD,
  393.     1,     "QUIETTRANSFER",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_TRANSFER_QUIET_TRANSFER,
  394.     1,     "MANGLEFILENAMES",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_TRANSFER_MANGLE_FILE_NAMES,
  395.     1,     "LINEDELAY",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_TRANSFER_LINEDELAY,
  396.     1,     "CHARDELAY",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_TRANSFER_CHARDELAY,
  397.     1,     "LINEPROMPTTEXT",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_TRANSFER_LINEPROMPT,
  398.     1,     "TEXTPACING",            INFO_MAPPED,    FALSE,    PacingMappings,        ATTR_PREFS_TRANSFER_TEXTPACING,
  399.     1,     "SENDTIMEOUT",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_TRANSFER_SENDTIMEOUT,
  400.     1,     "STRIPBIT8",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_TRANSFER_STRIP_BIT_8,
  401.     1,     "IGNOREDATAPASTTERMINATOR",    INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_TRANSFER_IGNORE_DATA_PAST_ARNOLD,
  402.     1,     "TERMINATORCHAR",        INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_TRANSFER_TERMINATOR_CHAR,
  403.     1,     "TEXTUPLOADLIBRARY",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_TRANSFER_TEXT_UPLOAD_LIBRARY,
  404.     1,     "TEXTDOWNLOADLIBRARY",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_TRANSFER_TEXT_DOWNLOAD_LIBRARY,
  405.     1,     "BINARYUPLOADLIBRARY",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_TRANSFER_BINARY_UPLOAD_LIBRARY,
  406.     1,     "BINARYDOWNLOADLIBRARY",    INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_TRANSFER_BINARY_DOWNLOAD_LIBRARY,
  407.  
  408.     0,    "SPEECHPREFS",            INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_SPEECH,
  409.     1,     "RATE",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_SPEECH_RATE,
  410.     1,     "PITCH",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_SPEECH_PITCH,
  411.     1,     "FREQUENCY",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_SPEECH_FREQUENCY,
  412.     1,     "SEXMODE",            INFO_MAPPED,    FALSE,    SexMappings,        ATTR_PREFS_SPEECH_SEXMODE,
  413.     1,     "VOLUME",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_SPEECH_VOLUME,
  414.     1,     "SPEECH",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_SPEECH_SPEECH,
  415.  
  416.     0,    "TRANSLATIONPREFS",        INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_TRANSLATIONS,
  417.     1,     NULL,                INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_TRANSLATIONS_X,
  418.     2,     "SEND",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_TRANSLATIONS_X_SEND,
  419.     2,     "RECEIVE",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_TRANSLATIONS_X_RECEIVE,
  420.  
  421.     0,    "FASTMACROPREFS",        INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_FASTMACROS,
  422.     1,     "COUNT",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_FASTMACROS_COUNT,
  423.     1,      NULL,                INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_FASTMACROS_X,
  424.     2,      "NAME",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_FASTMACROS_X_NAME,
  425.     2,      "CODE",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_FASTMACROS_X_CODE,
  426.  
  427.     0,    "HOTKEYPREFS",            INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_HOTKEYS,
  428.     1,     "TERMSCREENTOFRONTTEXT",    INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_HOTKEYS_TERMSCREENTOFRONTTEXT,
  429.     1,     "BUFFERSCREENTOFRONTTEXT",    INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_HOTKEYS_BUFFERSCREENTOFRONTTEXT,
  430.     1,     "SKIPDIALENTRYTEXT",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_HOTKEYS_SKIPDIALENTRYTEXT,
  431.     1,     "ABORTAREXX",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_HOTKEYS_ABORTAREXX,
  432.     1,     "COMMODITYPRIORITY",        INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_HOTKEYS_COMMODITYPRIORITY,
  433.     1,     "HOTKEYSENABLED",        INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_HOTKEYS_HOTKEYSENABLED,
  434.  
  435.     0,    "CURSORKEYPREFS",        INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_CURSORKEYS,
  436.     1,     "UPTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CURSORKEYS_UPTEXT,
  437.     1,     "RIGHTTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CURSORKEYS_RIGHTTEXT,
  438.     1,     "DOWNTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CURSORKEYS_DOWNTEXT,
  439.     1,     "LEFTTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CURSORKEYS_LEFTTEXT,
  440.  
  441.     1,     "SHIFT",            INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_CURSORKEYS_SHIFT,
  442.     2,      "UPTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CURSORKEYS_SHIFT_UPTEXT,
  443.     2,      "RIGHTTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CURSORKEYS_SHIFT_RIGHTTEXT,
  444.     2,      "DOWNTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CURSORKEYS_SHIFT_DOWNTEXT,
  445.     2,      "LEFTTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CURSORKEYS_SHIFT_LEFTTEXT,
  446.  
  447.     1,     "ALT",                INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_CURSORKEYS_ALT,
  448.     2,      "UPTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CURSORKEYS_ALT_UPTEXT,
  449.     2,      "RIGHTTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CURSORKEYS_ALT_RIGHTTEXT,
  450.     2,      "DOWNTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CURSORKEYS_ALT_DOWNTEXT,
  451.     2,      "LEFTTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CURSORKEYS_ALT_LEFTTEXT,
  452.  
  453.     1,     "CONTROL",            INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_CURSORKEYS_CONTROL,
  454.     2,      "UPTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CURSORKEYS_CONTROL_UPTEXT,
  455.     2,      "RIGHTTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CURSORKEYS_CONTROL_RIGHTTEXT,
  456.     2,      "DOWNTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CURSORKEYS_CONTROL_DOWNTEXT,
  457.     2,      "LEFTTEXT",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CURSORKEYS_CONTROL_LEFTTEXT,
  458.  
  459.     0,    "FUNCTIONKEYPREFS",        INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_FUNCTIONKEYS,
  460.     1,      NULL,                INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_FUNCTIONKEYS_X,
  461.     1,     "SHIFT",            INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_FUNCTIONKEYS_SHIFT,
  462.     2,       NULL,            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_FUNCTIONKEYS_SHIFT_X,
  463.     1,     "ALT",                INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_FUNCTIONKEYS_ALT,
  464.     2,       NULL,            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_FUNCTIONKEYS_ALT_X,
  465.     1,     "CONTROL",            INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_FUNCTIONKEYS_CONTROL,
  466.     2,       NULL,            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_FUNCTIONKEYS_CONTROL_X,
  467.  
  468.     0,    "PROTOCOLPREFS",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_PROTOCOL,
  469.  
  470.     0,    "CONSOLEPREFS",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_CONSOLE,
  471.  
  472.     0,    "SOUNDPREFS",            INFO_STEM,    FALSE,    NULL,            ATTR_PREFS_SOUND,
  473.     1,     "BELLNAME",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_SOUND_BELLNAME,
  474.     1,     "CONNECTNAME",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_SOUND_CONNECTNAME,
  475.     1,     "DISCONNECTNAME",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_SOUND_DISCONNECTNAME,
  476.     1,     "GOODTRANSFERNAME",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_SOUND_GOODTRANSFERNAME,
  477.     1,     "BADTRANSFERNAME",        INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_SOUND_BADTRANSFERNAME,
  478.     1,     "RINGNAME",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_SOUND_RINGNAME,
  479.     1,     "VOICENAME",            INFO_TEXT,    FALSE,    NULL,            ATTR_PREFS_SOUND_VOICENAME,
  480.     1,     "PRELOAD",            INFO_BOOLEAN,    FALSE,    NULL,            ATTR_PREFS_SOUND_PRELOAD,
  481.     1,     "VOLUME",            INFO_NUMERIC,    FALSE,    NULL,            ATTR_PREFS_SOUND_VOLUME,
  482.  
  483.     0,    "PHONEBOOK",            INFO_STEM,    TRUE,    NULL,            ATTR_PHONEBOOK,
  484.  
  485.     1,     "COUNT",            INFO_NUMERIC,    TRUE,    NULL,            ATTR_PHONEBOOK_COUNT,
  486.     1,      NULL,                INFO_STEM,    TRUE,    NULL,            ATTR_PHONEBOOK_X,
  487.     2,      "NAME",            INFO_TEXT,    TRUE,    NULL,            ATTR_PHONEBOOK_X_NAME,
  488.     2,      "NUMBER",            INFO_TEXT,    TRUE,    NULL,            ATTR_PHONEBOOK_X_NUMBER,
  489.     2,      "COMMENTTEXT",        INFO_TEXT,    TRUE,    NULL,            ATTR_PHONEBOOK_X_COMMENTTEXT,
  490.     2,      "USERNAME",            INFO_TEXT,    TRUE,    NULL,            ATTR_PHONEBOOK_X_USERNAME,
  491.     2,      "PASSWORDTEXT",        INFO_TEXT,    TRUE,    NULL,            ATTR_PHONEBOOK_X_PASSWORDTEXT
  492. };
  493.  
  494. LONG AttributeTableSize = sizeof(AttributeTable) / sizeof(struct AttributeEntry);
  495.  
  496.     /* Information on arguments to exclude each other.*/
  497.  
  498. STATIC struct ExclusionInfo ExclusionInfoTable_00[] =
  499. {
  500.     1,2, 5,6, -1,-1
  501. };
  502.  
  503. STATIC struct ExclusionInfo ExclusionInfoTable_01[] =
  504. {
  505.     0,1, -1,-1
  506. };
  507.  
  508. STATIC struct ExclusionInfo ExclusionInfoTable_02[] =
  509. {
  510.     2,3, -1,-1
  511. };
  512.  
  513. STATIC struct ExclusionInfo ExclusionInfoTable_03[] =
  514. {
  515.     0,1, 0,2, 0,3, 0,4, 1,2, 1,3, 1,4, 2,3, 2,4, 3,4, -1,-1
  516. };
  517.  
  518. STATIC struct ExclusionInfo ExclusionInfoTable_04[] =
  519. {
  520.     0,1, 0,2, 1,2, -1,-1
  521. };
  522.  
  523. STATIC struct ExclusionInfo ExclusionInfoTable_05[] =
  524. {
  525.     0,2, 0,3, 0,4, 0,5, 2,3, 2,4, 2,5, 3,4, 3,5, 4,5, -1,-1
  526. };
  527.  
  528. STATIC struct ExclusionInfo ExclusionInfoTable_06[] =
  529. {
  530.     2,3, -1,-1
  531. };
  532.  
  533. STATIC struct ExclusionInfo ExclusionInfoTable_07[] =
  534. {
  535.     0,1, -1,-1
  536. };
  537.  
  538. STATIC struct ExclusionInfo ExclusionInfoTable_08[] =
  539. {
  540.     0,1, -1,-1
  541. };
  542.  
  543. STATIC struct ExclusionInfo ExclusionInfoTable_09[] =
  544. {
  545.     0,1, -1,-1
  546. };
  547.  
  548. STATIC struct ExclusionInfo ExclusionInfoTable_10[] =
  549. {
  550.     1,2, 2,3, 2,4, 2,5, 2,6, 2,7, 2,8, 2,9, 2,10, 2,11, 4,5, 6,7, 8,9, 8,10, 8,11, 9,10, 9,11, 10,11, -1,-1
  551. };
  552.  
  553.     /* This is where the information on what arguments exclude
  554.      * other arguments is linked to the actual commands.
  555.      */
  556.  
  557. struct ExclusionInfo *ExclusionTable[] =
  558. {
  559.     /* ACTIVATE */        NULL,
  560.     /* ADD */        ExclusionInfoTable_00,
  561.     /* BAUD */        NULL,
  562.     /* BEEPSCREEN */    NULL,
  563.     /* CALLMENU */        NULL,
  564.     /* CAPTURE */        NULL,
  565.     /* CLEAR */        NULL,
  566.     /* CLEARSCREEN */    NULL,
  567.     /* CLOSE */        NULL,
  568.     /* CLOSEDEVICE */    NULL,
  569.     /* CLOSEREQUESTER */    NULL,
  570.     /* DEACTIVATE */    NULL,
  571.     /* DELAY */        NULL,
  572.     /* DIAL */        NULL,
  573.     /* DUPLEX */        ExclusionInfoTable_01,
  574.     /* EXECTOOL */        NULL,
  575.     /* FAULT */        NULL,
  576.     /* GETATTR */        ExclusionInfoTable_02,
  577.     /* GETCLIP */        NULL,
  578.     /* GOONLINE */        NULL,
  579.     /* HANGUP */        NULL,
  580.     /* HELP */        NULL,
  581.     /* OPEN */        NULL,
  582.     /* OPENDEVICE */    NULL,
  583.     /* OPENREQUESTER */    NULL,
  584.     /* PARITY */        ExclusionInfoTable_03,
  585.     /* PASTECLIP */        NULL,
  586.     /* PRINT */        NULL,
  587.     /* PROTOCOL */        ExclusionInfoTable_04,
  588.     /* PROCESSIO */        ExclusionInfoTable_09,
  589.     /* PUTCLIP */        NULL,
  590.     /* QUIT */        NULL,
  591.     /* READ */        NULL,
  592.     /* RECEIVEFILE */    NULL,
  593.     /* REDIAL */        NULL,
  594.     /* REMOVE */        NULL,
  595.     /* REQUESTFILE */    NULL,
  596.     /* REQUESTNOTIFY */    NULL,
  597.     /* REQUESTNUMBER */    NULL,
  598.     /* REQUESTRESPONSE */    NULL,
  599.     /* REQUESTSTRING */    NULL,
  600.     /* RESETSCREEN */    NULL,
  601.     /* RESETSTYLES */    NULL,
  602.     /* RESETTEXT */        NULL,
  603.     /* RESETTIMER */    NULL,
  604.     /* RX */        NULL,
  605.     /* SAVE */        NULL,
  606.     /* SAVEAS */        NULL,
  607.     /* SELECTITEM */    ExclusionInfoTable_05,
  608.     /* SEND */        NULL,
  609.     /* SENDBREAK */        NULL,
  610.     /* SENDFILE */        NULL,
  611.     /* SETATTR */        ExclusionInfoTable_06,
  612.     /* SPEAK */        NULL,
  613.     /* STOPBITS */        ExclusionInfoTable_07,
  614.     /* TEXTBUFFER */    ExclusionInfoTable_08,
  615.     /* TIMEOUT */        ExclusionInfoTable_09,
  616.     /* TRAP */        ExclusionInfoTable_09,
  617.     /* WAIT */        NULL,
  618.     /* WINDOW */        ExclusionInfoTable_10,
  619. };
  620.  
  621.     /* This is where the information on which arguments (switches and keywords)
  622.      * are actually required is stored.
  623.      */
  624.  
  625. UWORD InclusionTable[] =
  626. {
  627.     /* ACTIVATE */        NULL,
  628.     /* ADD */        INCLUDE_05|INCLUDE_06,
  629.     /* BAUD */        NULL,
  630.     /* BEEPSCREEN */    NULL,
  631.     /* CALLMENU */        NULL,
  632.     /* CAPTURE */        NULL,
  633.     /* CLEAR */        NULL,
  634.     /* CLEARSCREEN */    NULL,
  635.     /* CLOSE */        NULL,
  636.     /* CLOSEDEVICE */    NULL,
  637.     /* CLOSEREQUESTER */    NULL,
  638.     /* DEACTIVATE */    NULL,
  639.     /* DELAY */        INCLUDE_00|INCLUDE_01|INCLUDE_02,
  640.     /* DIAL */        NULL,
  641.     /* DUPLEX */        INCLUDE_00|INCLUDE_01,
  642.     /* EXECTOOL */        NULL,
  643.     /* FAULT */        NULL,
  644.     /* GETATTR */        NULL,
  645.     /* GETCLIP */        NULL,
  646.     /* GOONLINE */        NULL,
  647.     /* HANGUP */        NULL,
  648.     /* HELP */        INCLUDE_00|INCLUDE_01,
  649.     /* OPEN */        NULL,
  650.     /* OPENDEVICE */    NULL,
  651.     /* OPENREQUESTER */    NULL,
  652.     /* PARITY */        INCLUDE_00|INCLUDE_01|INCLUDE_02|INCLUDE_03|INCLUDE_04,
  653.     /* PASTECLIP */        NULL,
  654.     /* PRINT */        NULL,
  655.     /* PROTOCOL */        INCLUDE_00|INCLUDE_01|INCLUDE_02,
  656.     /* PROCESSIO */        INCLUDE_00|INCLUDE_01,
  657.     /* PUTCLIP */        NULL,
  658.     /* QUIT */        NULL,
  659.     /* READ */        INCLUDE_00|INCLUDE_01,
  660.     /* RECEIVEFILE */    NULL,
  661.     /* REDIAL */        NULL,
  662.     /* REMOVE */        NULL,
  663.     /* REQUESTFILE */    NULL,
  664.     /* REQUESTNOTIFY */    NULL,
  665.     /* REQUESTNUMBER */    NULL,
  666.     /* REQUESTRESPONSE */    NULL,
  667.     /* REQUESTSTRING */    NULL,
  668.     /* RESETSCREEN */    NULL,
  669.     /* RESETSTYLES */    NULL,
  670.     /* RESETTEXT */        NULL,
  671.     /* RESETTIMER */    NULL,
  672.     /* RX */        NULL,
  673.     /* SAVE */        NULL,
  674.     /* SAVEAS */        INCLUDE_00|INCLUDE_02|INCLUDE_03|INCLUDE_04|INCLUDE_05,
  675.     /* SELECTITEM */    NULL,
  676.     /* SEND */        INCLUDE_02|INCLUDE_03,
  677.     /* SENDBREAK */        NULL,
  678.     /* SENDFILE */        NULL,
  679.     /* SETATTR */        INCLUDE_02|INCLUDE_03,
  680.     /* SPEAK */        NULL,
  681.     /* STOPBITS */        INCLUDE_00|INCLUDE_01,
  682.     /* TEXTBUFFER */    INCLUDE_00|INCLUDE_01,
  683.     /* TIMEOUT */        INCLUDE_00|INCLUDE_01,
  684.     /* TRAP */        INCLUDE_00|INCLUDE_01,
  685.     /* WAIT */        NULL,
  686.     /* WINDOW */        INCLUDE_01|INCLUDE_02|INCLUDE_03|INCLUDE_04|INCLUDE_05|INCLUDE_06|INCLUDE_07|INCLUDE_08|INCLUDE_09|INCLUDE_10|INCLUDE_11,
  687. };
  688.  
  689.     /* This is where command names, arguments and the routines
  690.      * to execute the actual commands are linked together.
  691.      */
  692.  
  693. struct CommandInfo __far CommandTable[] =
  694. {
  695.     TRUE,    FALSE,    FALSE,    RexxActivate,        "ACTIVATE",         NULL,
  696.     TRUE,    FALSE,    FALSE,    RexxAdd,        "ADDITEM",        "TO/A,BEFORE/S,AFTER/S,RESPONSE/K,COMMAND/K,PHONE/K/F,NAME/K/F",
  697.     FALSE,    FALSE,    FALSE,    RexxBaud,        "BAUD",            "RATE/A/N",
  698.     FALSE,    FALSE,    FALSE,    RexxBeepScreen,        "BEEPSCREEN",         NULL,
  699.     FALSE,    FALSE,    FALSE,    RexxCallMenu,        "CALLMENU",        "TITLE/A/F",
  700.     FALSE,    FALSE,    FALSE,    RexxCapture,        "CAPTURE",        "TO/A,NAME/K",
  701.     FALSE,    FALSE,    FALSE,    RexxClear,        "CLEAR",        "FROM/A,FORCE/S",
  702.     FALSE,    FALSE,    FALSE,    RexxClearScreen,    "CLEARSCREEN",         NULL,
  703.     FALSE,    FALSE,    FALSE,    RexxClose,        "CLOSE",        "FROM/A",
  704.     FALSE,    FALSE,    FALSE,    RexxCloseDevice,    "CLOSEDEVICE",         NULL,
  705.     TRUE,    FALSE,    FALSE,    RexxCloseRequester,    "CLOSEREQUESTER",     NULL,
  706.     TRUE,    FALSE,    FALSE,    RexxDeactivate,        "DEACTIVATE",         NULL,
  707.     FALSE,    FALSE,    FALSE,    RexxDelay,        "DELAY",        "MIC=MICROSECONDS/K/N,SEC=SECONDS/N,MIN=MINUTES/K/N,QUIET/S",
  708.     FALSE,    FALSE,    FALSE,    RexxDial,        "DIAL",            "WAIT=SYNC/S,NUM/F",
  709.     FALSE,    FALSE,    FALSE,    RexxDuplex,        "DUPLEX",        "FULL/S,HALF=ECHO/S",
  710.     TRUE,    TRUE,    TRUE,    RexxExecTool,        "EXECTOOL",        "CONSOLE/S,ASYNC/S,PORT/S,COMMAND/A/F",
  711.     TRUE,    FALSE,    FALSE,    RexxFault,        "FAULT",        "CODE/A/N",
  712.     TRUE,    FALSE,    FALSE,    RexxGetAttr,        "GETATTR",        "OBJECT/A,FIELD,STEM/K,VAR/K",
  713.     FALSE,    FALSE,    FALSE,    RexxGetClip,        "GETCLIP",        "UNIT/K/N",
  714.     FALSE,    FALSE,    FALSE,    RexxGoOnline,        "GOONLINE",         NULL,
  715.     FALSE,    FALSE,    FALSE,    RexxHangup,        "HANGUP",         NULL,
  716.     TRUE,    FALSE,    FALSE,    RexxHelp,        "HELP",            "COMMAND,PROMPT/S",
  717.     FALSE,    FALSE,    FALSE,    RexxOpen,        "OPEN",            "NAME/K,TO/A",
  718.     FALSE,    FALSE,    FALSE,    RexxOpenDevice,        "OPENDEVICE",        "NAME/K,UNIT/K/N",
  719.     FALSE,    FALSE,    FALSE,    RexxOpenRequester,    "OPENREQUESTER",    "REQUESTER/A",
  720.     FALSE,    FALSE,    FALSE,    RexxParity,        "PARITY",        "EVEN/S,ODD/S,NONE/S,MARK/S,SPACE/S",
  721.     TRUE,    FALSE,    FALSE,    RexxPasteClip,        "PASTECLIP",        "UNIT/K/N",
  722.     FALSE,    FALSE,    FALSE,    RexxPrint,        "PRINT",        "FROM/A,TO/K,SERIAL/S,MODEM/S,SCREEN/S,TERMINAL/S,USER/S,COMMENT/S,SIZE/S,DATE/S,ATTR/S",
  723.     FALSE,    FALSE,    FALSE,    RexxProtocol,        "PROTOCOL",        "NONE/S,RTSCTS/S,RTSCTSDTR/S",
  724.     FALSE,    FALSE,    FALSE,    RexxProcessIO,        "PROCESSIO",        "ON/S,OFF/S",
  725.     FALSE,    FALSE,    FALSE,    RexxPutClip,        "PUTCLIP",        "UNIT/K/N,TEXT/A/F",
  726.     TRUE,    FALSE,    FALSE,    RexxQuit,        "QUIT",            "FORCE/S",
  727.     FALSE,    FALSE,    FALSE,    RexxRead,        "READ",            "NUM/K/N,CR/S,NOECHO/S,VERBATIM/S,PROMPT/K/F",
  728.     FALSE,    FALSE,    FALSE,    RexxReceiveFile,    "RECEIVEFILE",        "MODE/K,NAME/K",
  729.     FALSE,    FALSE,    FALSE,    RexxRedial,        "REDIAL",         NULL,
  730.     TRUE,    FALSE,    FALSE,    RexxRemove,        "REMITEM",        "FROM/A,NAME/K/F",
  731.     FALSE,    FALSE,    FALSE,    RexxRequestFile,    "REQUESTFILE",        "TITLE/K,PATH/K,FILE/K,PATTERN/K,MULTI/S,STEM=NAME/K",
  732.     FALSE,    FALSE,    FALSE,    RexxRequestNotify,    "REQUESTNOTIFY",    "TITLE/K,PROMPT/A/F",
  733.     FALSE,    FALSE,    FALSE,    RexxRequestNumber,    "REQUESTNUMBER",    "DEFAULT/K/N,PROMPT/K/F",
  734.     FALSE,    FALSE,    FALSE,    RexxRequestResponse,    "REQUESTRESPONSE",    "TITLE/K,OPTIONS/K,PROMPT/A/F",
  735.     FALSE,    FALSE,    FALSE,    RexxRequestString,    "REQUESTSTRING",    "SECRET/S,DEFAULT/K,PROMPT/K/F",
  736.     FALSE,    FALSE,    FALSE,    RexxResetScreen,    "RESETSCREEN",         NULL,
  737.     FALSE,    FALSE,    FALSE,    RexxResetStyles,    "RESETSTYLES",         NULL,
  738.     FALSE,    FALSE,    FALSE,    RexxResetText,        "RESETTEXT",         NULL,
  739.     FALSE,    FALSE,    FALSE,    RexxResetTimer,        "RESETTIMER",         NULL,
  740.     TRUE,    TRUE,    TRUE,    RexxRX,            "RX",            "CONSOLE/S,ASYNC/S,COMMAND/A/F",
  741.     FALSE,    FALSE,    FALSE,    RexxSave,        "SAVE",            "FROM/A",
  742.     FALSE,    FALSE,    FALSE,    RexxSaveAs,        "SAVEAS",        "NAME/K,FROM/A",
  743.     TRUE,    FALSE,    FALSE,    RexxSelect,        "SELECTITEM",        "NAME/K,FROM/A,NEXT/S,PREV=PREVIOUS/S,TOP/S,BOTTOM/S",
  744.     FALSE,    FALSE,    FALSE,    RexxSend,        "SEND",            "NOECHO/S,LOCAL/S,BYTE/K/N,TEXT/F",
  745.     FALSE,    FALSE,    FALSE,    RexxSendBreak,        "SENDBREAK",         NULL,
  746.     FALSE,    FALSE,    FALSE,    RexxSendFile,        "SENDFILE",        "MODE/K,NAMES/M",
  747.     FALSE,    FALSE,    FALSE,    RexxSetAttr,        "SETATTR",        "OBJECT/A,FIELD,STEM/K,VAR",
  748.     TRUE,    FALSE,    FALSE,    RexxSpeak,        "SPEAK",        "TEXT/A/F",
  749.     FALSE,    FALSE,    FALSE,    RexxStopBits,        "STOPBITS",        "0/S,1/S",
  750.     FALSE,    FALSE,    FALSE,    RexxTextBuffer,        "TEXTBUFFER",        "LOCK/S,UNLOCK/S",
  751.     FALSE,    FALSE,    FALSE,    RexxTimeout,        "TIMEOUT",        "SEC=SECONDS/N,OFF/S",
  752.     FALSE,    FALSE,    FALSE,    RexxTrap,        "TRAP",            "ON/S,OFF/S",
  753.     FALSE,    FALSE,    FALSE,    RexxWait,        "WAIT",            "NOECHO/S,TEXT/F",
  754.     FALSE,    FALSE,    FALSE,    RexxWindow,        "WINDOW",        "NAMES/A/M,OPEN/S,CLOSE/S,ACTIVATE/S,MIN/S,MAX/S,FRONT/S,BACK/S,TOP/S,BOTTOM/S,UP/S,DOWN/S",
  755. };
  756.  
  757. LONG CommandTableSize = sizeof(CommandTable) / sizeof(struct CommandInfo);
  758.  
  759. struct MsgPort        *RexxPort        = NULL;
  760. LONG             LastRexxError        = 0;
  761. LONG             RexxTimeoutVal        = 0;
  762. BYTE             UpdateRequired        = FALSE,
  763.              TransferUpdateRequired    = FALSE;
  764.  
  765. LONG             RexxLaunchCount    = 0;
  766. struct SignalSemaphore     RexxLaunchSemaphore;
  767.